<!DOCTYPE html>
<!-- 网页使用的语言 -->
<html lang="zh-CN">
<head>
    <!-- 指定字符集 -->
    <meta charset="utf-8">
    <!-- 使用Edge最新的浏览器的渲染方式 -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <!-- viewport视口：网页可以根据设置的宽度自动进行适配，在浏览器的内部虚拟一个容器，容器的宽度与设备的宽度相同。
    width: 默认宽度与设备的宽度相同
    initial-scale: 初始的缩放比，为1:1 -->
<!--    <meta name="viewport" content="width=device-width, initial-scale=1">-->
    <!-- 上述3个meta标签*必须*放在最前面，任何其他内容都*必须*跟随其后！ -->
    <meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>


    <title>在线音乐服务器</title>

    <link rel="shortcut icon" href="#" />

    <!-- 1. 导入CSS的全局样式 -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <!-- 2. jQuery导入，建议使用1.9以上的版本 -->
    <script src="js/jquery-3.1.1.min.js"></script>
    <!-- 3. 导入bootstrap的js文件 -->
   <!-- <script src="js/bootstrap.min.js"></script>-->
    <style type="text/css">
        td, th {
            text-align: center;
        }
    </style>

    <script type="text/javascript">
    //    核心代码实现
		$(function(){
            // 调用 load 函数
            load();
        });

        // 这个参数可传，可不传。
        function load(name){// 这个 name，指的是 音乐名称
            // 在这个函数里，构造对应的HTTP请求
            $.ajax({
                type: "get",
                url: "/music/findmusic",
                data: {
                    "name": name
                },
                dataType: "json",
                success:function(body){
                    console.log(body);
                    // 定义一个数组
                    let array = body.data;

                    // 利用字符拼接来实现
                    let s='';
                    // 使用 for 循环遍历这个 array 数组
                    for(let i = 0;i < array.length;i++){
                        // 通过 data[i].xx  就能获取对应参数。
                        // 每一首歌曲，都独占一行。在一个 tr 标签里面
                        let musicUrl = array[i].url + ".mp3";
                        s += "<tr>";
                        s += '<th> <input id= "'+ array[i].id +'" type="checkbox"> </th>';
                        s += '<td>' + array[i].title + '</td>';
                        s += '<td>' + array[i].singer + '</td>';
                        s+='<td > <button class="btn btn-primary" onclick="playerSong(\''+musicUrl+'\')" >播放歌曲</button>' +'</td>';
                        s+='<td > <button class="btn btn-primary" onclick="deleteInfo('+ array[i].id + ')" >删除</button>' 
                            +'<button class="btn btn-primary" onclick="loveInfo('+ array[i].id + ')" > 喜欢</button>'+'</td>';
                        s += "</tr>";
                    }
                    // 走到这里，说明所有的前端代码，一金拼接完成了。 
                    // 可以装入“容器 - <tbody id="info" valign="middle">   </tbody>”
                    $("#info").html(s);
                }
            }); 
        }
        // playerSong 是一个函数，这是没有争议的！
        function playerSong(obj) {
            // musicUrl： /music/get?path=Shadow Of The Sun.mp3
            console.log(obj);
            var name = obj.substring(obj.lastIndexOf('=')+1);// Shadow Of The Sun.mp3
            //obj: 播放地址,   name：歌曲或者视频名称, 开始时间:  0,  点击播放按钮自动播放： true
            SewisePlayer.toPlay(obj,name,0,true);
        }
        function deleteInfo(obj){// 这里就是上面传递的 array[i].id
            console.log(obj);
            $.ajax({
                type: "post",
                url: "/music/delete",
                data: {"id": obj},
                dataType: "json",
                success:function(body){
                    console.log(body);
                    if(body.data == true){
                        alert("删除成功，重新加载页面！");
                        window.location.href = "list.html";
                    }else{
                        alert("删除失败！");
                    }
                }
            });
        }
        // 我们专门为查询操作建立一个函数（这个函数可以定义多个，没有影响的）
        // 当然，你继续在load 函数中写，也是没有问题的。
        $(function(){
            // 获取按钮元素，并且 当按下按钮的时候，触发 click 进行相应的处理
           $("#submit1").click(function(){
                // 获取音乐名
                let name = $("#exampleInputName2").val();
                load(name);
                $("#exampleInputName2").val("");
           });
           // 当 load 函数 执行完成之后，触发下面代码
           $.when(load).done(function(){
            // 当id为 delete 的 元素 发生 点击事件时，就会执行下面的代码 
                $("#delete").click(function(){
                    let ids = new Array();//创建一个数组
                    let i = 0;// 数组下标
                    // 获取所有的 checkbox元素，进行遍历存储
                    $("input:checkbox").each(function(){
                        // 判断当前遍历到的元素是否被选中
                        if($(this).is(":checked")){
                            // 获取当前元素的 id 值。
                            ids[i] = $(this).attr("id");
                            i++;
                        }
                    });
                    console.log(ids);
                    $.ajax({
                        type: "post",
                        url: "/music/deletesel",
                        data: {"ids[]": ids},
                        dataType: "json",
                        success:function(body){
                            if(body.data == true){
                                // 批量删除成功
                                alert(body.message);
                                // 重新加载 列表页
                                window.location.href="list.html";
                            }else{
                                alert(body.message);
                            }
                        }
                    });
                });
           });
        });

        function loveInfo(obj){
            $.ajax({
                type: "post",
                url: "/lovemusic/likemusic",
                data:{
                    "musicid": obj
                },
                dataType: "json",
                success:function(body){
                    console.log(body);
                    if(body.data == true){
                        alert(body.message);
                        window.location.href="loveMusic.html";
                    }else{
                        alert(body.message);
                    }
                }
            });
        }
    </script>
</head>

<body id="body">
<div class="container">
    <h3  style="text-align: center">在线音乐服务器实现</h3>
    <div style="float: left;">
        <form class="form-inline">
            <div class="form-group">
                <label for="exampleInputName2">歌曲名</label>
                <input name="name" type="text" class="form-control" id="exampleInputName2" >
            </div>
            <button id="submit1" type="button" class="btn btn-primary">查询</button>
        </form>
    </div>
    <div style="float: right;margin-bottom: 15px">
        <a class="btn btn-primary" href="loveMusic.html">喜欢列表</a>
        <a class="btn btn-primary" href="upload.html">添加歌曲</a>
        <a id="delete" class="btn btn-primary">删除选中</a>
    </div>
    <table border="1" class="table table-bordered table-hover">
        <tr class="success">
            <th>选择</th>
            <th>歌名</th>
            <th>歌手</th>
            <th>歌曲</th>
            <th>操作</th>
        </tr>

        <!-- <tr>
            <th> <input id="1" type="checkbox"> </th>
            <td>成都</td>
            <td>赵雷</td>
            <td><button class="btn btn-primary" onclick="playerSong('+musicUr1+')">播放音乐</button></td>
            <td><button class="btn btn-primary" onclick="deleteSong('+musicUr1+')">删除</button>
                <button class="btn btn-primary" onclick="loveInfo('+musicUr1+')">喜欢</button>
            </td>
        </tr> -->

        <tbody id="info" valign="middle">

        </tbody>
    </table>
</div>
</body>
<div style="width: 180px; height: 140px; position:absolute; bottom:10px; right:10px">
	<script type="text/javascript" src="player/sewise.player.min.js"></script>
		<script type="text/javascript">
			SewisePlayer.setup({
				server: "vod",
				type: "mp3",// 把 这个改成 mp3 就可以了。
                // 默认的 MP3 播放地址（路径）
				videourl: "http://jackzhang1204.github.io/materials/mov_bbb.mp4",
                //  这个就是皮肤，播放器的皮肤。
		        skin: "vodWhite",
		        // title: "Tile 标题",
		        // lang: 'zh_CN',
                //这里需要我们手动一个熟悉为false，顾名思义：关闭自动播放功能。
                autostart:"false",
		        // fallbackurls:{
				// 	ogg: "http://jackzhang1204.github.io/materials/mov_bbb.ogg",
				// 	webm: "http://jackzhang1204.github.io/materials/mov_bbb.webm"
				// }
			});
		</script>
</div>

</html>
